# -*- coding: utf-8 -*-
"""
@Time    : 2024/9/10 19:49 
@Author  : ZhangShenao 
@File    : 1.集合的声明.py
@Desc    : 集合的声明

Python中的set集合跟数学上的集合是一致的
set是一个可变的、无序的、不包含重复元素的集合
可以进行交集、并集、差集等运算
"""

# 通过字面量创建集合
# 集合不包含重复元素
s1 = {1, 2, 3, 3, 2, 2, 2}
print(f"s1 = {s1}")  # s1 = {1, 2, 3}

# 通过内置的len函数,可以获取集合长度
print(f"len(s1) = {len(s1)}")  # len(s1) = 3

# 通过构造器创建集合
s2 = set([1, 2, 3, 3, 2, 2, 2])
print(f"s2 = {s2}")  # s2 = {1, 2, 3}
s3 = set(range(1, 11))
print(f"s3 = {s3}")  # s3 = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}

# 通过生成式创建集合
s4 = {n for n in range(1, 101) if n % 3 == 0 and n % 5 == 0}
print(f"s4 = {s4}")  # s4 = {75, 45, 15, 90, 60, 30}
